package com.runner.player.state;

import com.badlogic.gdx.math.Vector2;
import com.runner.entity.CollisionEntity;
import com.runner.player.Player;
import com.runner.utility.Constants;

public abstract class PlayerState implements Constants {

	protected Player player;
	protected Vector2 tmp;
	protected Vector2 vel;

	public PlayerState(Player p) {
		player = p;
		tmp=new Vector2();
		vel=new Vector2();
		enter();
	}

	public abstract void update(float delta);
	
	public abstract void newAction(INPUT input);

	public abstract void enter();

	public abstract void exit();
	
	public abstract void collide(CollisionEntity otherBody);

	public Player getPlayer() {
		return player;
	}

	public void setPlayer(Player player) {
		this.player = player;
	}
}
